草庐IT

sql - postgres 列别名问题

全部标签

postgresql - 使用 Postgres 和 GO 强制执行 "lock"

我是Postgres的新手,所以这可能是显而易见的(或者非常困难,我不确定)。我想强制一个表或行一次至少“锁定”几秒钟。这将导致第二个操作“等待”。我正在使用golang和“github.com/lib/pq”来与数据库交互。我需要这个的原因是因为我正在做一个监控postgresql的项目。谢谢你的帮助。 最佳答案 您还可以使用select...forupdate来锁定一行或多行事务的长度。基本上,它就像:begin;select*fromfoowherequatloos=100forupdate;updatefoosetfeens

mysql - App Engine 中的 GoLang 动态 SQL 查询

我想在GoLang中制作动态sql,但似乎找不到正确的方法。基本上,我只想做:query:="SELECTid,email,somethingFROMUser"varparamValues[]stringfilterString:=""ifuserParams.Name!=""{paramString+="WHEREid=?"paramValues=append(paramValues,userParams.Name)}ifuserParams.UserID!=""{iflen(paramString)>0{paramString+="AND"}else{paramString+="W

sql - Go SQL 扫描/值接口(interface)问题

我正在尝试为我的自定义结构添加自动转换的扫描/值接口(interface)。我还能够在bool类型上实现Value()和Scan(),但是当尝试在具有gocql.UUID字段的东西上实现它时,我无法让Scan()工作。如有任何建议,我们将不胜感激!简短示例:typeUidstruct{gocql.UUID}func(u*Uid)Scan(valueinterface{})error{...ifsv,err:=driver.String.ConvertValue(value);err==nil{ifv,ok:=sv.(string);ok{//完整代码:https://play.gola

postgresql - Golang Postgres 如何将表转储为 JSON

我正在尝试为Go1.9中的多个表(一次一个表)运行此命令:COPY(selectrow_to_json(foo)FROM(SELECT*FROMbar)foo)TO'/tmp/bar.json';这可能吗?似乎与lib/pg一起,但事实并非如此。使用go-pg,我总是会耗尽内存,因为它会先将所有内容缓冲到内存中。从命令提示符执行此操作效果很好。我宁愿使用Go的PG库,也不愿让它在命令提示符下运行。简而言之,我试图将整个表转储到它们自己的文件中的JSON中。有人成功过吗?谢谢!编辑:因为lb/pg根本不支持这个,所以我使用pg-go。这是代码:varbufbytes.Buffer_,er

pointers - 将类型别名的变量传递给需要指向基础类型的指针的函数

我将自定义类型别名(使用方法)定义为:typeAwsRegionstring然后我想将这种类型的变量传递给另一个遗留(不受我控制)函数,它接受指向字符串的指针(指向基础类型的指针):funcmain(){varregionAwsRegion="us-west-2"f(®ion)//HowtoproperlycastAwsRegiontypehere?}funcf(s*string){fmt.Println(*s)//justanexample}当然我不能这样做,错误消息指出:cannotuse®ion(type*AwsRegion)astype*stringinargume

sql - 奇怪的 Golang SQL 错误 - WHERE 子句

我正在使用sqlx库在Golang中运行查询:rows,dbErr:=db.Queryx(`SELECT*FROMtable_aasaINNERJOINtable_bASbONa.b_id=b.id  WHEREb.id='b3c06feb-8bd1-42e1-b516-c1121990ff81';`)查询在语法上是正确的,并且在Postico、终端等中运行良好。但是,当我尝试在Golang中运行此查询时,我收到错误pq:syntaxerroratornear"WHERE"谁能解释这种奇怪的行为? 最佳答案 问题是过时的依赖项。我们

go - 导入本地包时遇到问题

我决定尝试将我的项目分解为MVC类型View,所以开始时我想将所有路由放入一个Controller文件夹中,并将我的数据库连接放入另一个名为db的文件夹中。我想不出如何使数据库连接顺利进行。当所有文件都在我的packagemain中时,我只是在main中调用了InitDb()并且在main包中的所有其他文件中我可以访问数据库多变的。既然我制作了db,它是down包并导入它,没有任何东西被识别。我也不知道在哪里调用InitDb()和deferdb.Close()因为它们不在main中。db/db.gopackagedatabaseimport("fmt""database/sql")va

postgresql - 我如何使这个 Golang 到 Postgres 的查询更快?有什么具体的选择吗?

我正在使用Golang和Postgres来过滤一些财务数据。我有一个Postgres数据库,它有一个包含单个股票市场的表(如果这是正确的术语)。此表包含ID、代码、日期、开盘价、最高价、最低价、收盘价和交易量的列。总行数为6,610,598,不同股票(代码)的数量为2174。现在我要做的是从那个表中过滤数据,然后保存到另一个表中。所以第一个包含原始数据,第二个包含清理后的数据。我们有三个参数,一个日期(EVALDATE)和两个整数(MINCTD&MINDP)。首先,我们必须只选择那些将通过我们的最小日历交易日参数的股票。所以这将被选择(注意:我们为此使用golang)symbols[]

sql - 如何使用 Golang 在 Postgres 中批处理 SQL 语句

使用Golang向Postgres数据库发送批量请求的最快方法是什么?每个请求包含500-200000行。我知道的方法是-1.使用database/sql包的事务Begin,Prepare,Commit.2.一条语句发送所有数据。3.使用sql.Exec()方法发送语句列表。有没有其他方法可以在不在每个语句中建立连接的情况下发送批量请求?如果不是,哪种方法最好?这个问题类似于-GolanghowdoIbatchsqlstatementswithpackagedatabase.sql的问题 最佳答案 depesz有点老blogpost

go - 在 Circle Ci Golang 上导入包时出现问题

我正在使用CircleCI来测试我的项目。该项目是一个简单的Go应用程序,由几个包和一个main.go文件组成。在我的项目中引用包时,我只是将它们作为代码中的“projectName/packageName”导入。这在本地工作正常,但是,当我推送到git并且它是在CircleCI上构建时,我收到以下错误。packagecrypto-compare-go/handlers:unrecognizedimportpath"crypto-compare-go/handlers"(importpathdoesnotbeginwithhostname)我通过在本地包导入前加上github.com/